home *** CD-ROM | disk | FTP | other *** search
/ Visual Basic Toolbox / Visual Basic Toolbox (P.I.E.)(1996).ISO / mdi / ttedit / api.bas < prev    next >
BASIC Source File  |  1995-01-04  |  17KB  |  415 lines

  1. '
  2. '  This is a subset of WIN30API.TXT
  3. '
  4. Option Explicit
  5.  
  6. Type PointAPI
  7.     x As Integer
  8.     y As Integer
  9. End Type
  10.  
  11. Type Rect
  12.     left As Integer
  13.     top As Integer
  14.     right As Integer
  15.     bottom As Integer
  16. End Type
  17.  
  18.  
  19. Declare Function Winhelp Lib "User" (ByVal hWnd As Integer, ByVal lpHelpFile As String, ByVal wCommand As Integer, dwData As Any) As Integer
  20. Declare Function WritePrivateProfileString Lib "Kernel" (ByVal lpApplicationName As String, ByVal lpKeyName As String, ByVal lpString As String, ByVal lplFileName As String) As Integer
  21. Declare Function GetPrivateProfileInt Lib "Kernel" (ByVal lpApplicationName As String, ByVal lpKeyName As String, ByVal nDefault As Integer, ByVal lpFileName As String) As Integer
  22. Declare Function getDC Lib "User" (ByVal hWnd As Integer) As Integer
  23. Declare Function SaveDC Lib "GDI" (ByVal hDC As Integer) As Integer
  24. Declare Function RestoreDC Lib "GDI" (ByVal hDC As Integer, ByVal nSavedDC As Integer) As Integer
  25. Declare Function ReleaseDc Lib "User" (ByVal hWnd As Integer, ByVal hDC As Integer) As Integer
  26. Declare Function GetTopWindow Lib "User" (ByVal hWnd As Integer) As Integer
  27. Declare Function Getparent Lib "User" (ByVal hWnd As Integer) As Integer
  28. Declare Function CreateSolidBrush Lib "GDI" (ByVal crColor As Long) As Integer
  29. Declare Function DeleteObject Lib "GDI" (ByVal hObject As Integer) As Integer
  30. Declare Function SelectObject Lib "GDI" (ByVal hDC As Integer, ByVal hObject As Integer) As Integer
  31. Declare Function ExtFloodFill Lib "GDI" (ByVal hDC As Integer, ByVal x As Integer, ByVal y As Integer, ByVal crColor As Long, ByVal wFillType As Integer) As Integer
  32. Declare Function MoveTo Lib "GDI" (ByVal hDC As Integer, ByVal x As Integer, ByVal y As Integer) As Long
  33. Declare Function LineTo Lib "GDI" (ByVal hDC As Integer, ByVal x As Integer, ByVal y As Integer) As Integer
  34. Declare Function CreatePen Lib "GDI" (ByVal nPenStyle As Integer, ByVal nWidth As Integer, ByVal crColor As Long) As Integer
  35. Declare Function ReleaseDc Lib "User" (ByVal hWnd As Integer, ByVal hDC As Integer) As Integer
  36. Declare Function GetStockObject Lib "GDI" (ByVal nIndex As Integer) As Integer
  37. Declare Function sendMessage Lib "User" (ByVal hWnd As Integer, ByVal wMsg As Integer, ByVal wParam As Integer, lParam As Any) As Long
  38. Declare Function GetTickCount Lib "User" () As Long
  39. Declare Sub GetCursorPos Lib "User" (lpPoint As PointAPI)
  40. Declare Sub GetWindowRect Lib "User" (ByVal hWnd As Integer, lpRect As Rect)
  41. Declare Sub OffsetRect Lib "User" (lpRect As Rect, ByVal x As Integer, ByVal y As Integer)
  42. Declare Sub InflateRect Lib "User" (lpRect As Rect, ByVal x As Integer, ByVal y As Integer)
  43. Declare Sub SetWindowPos Lib "User" (ByVal hWnd As Integer, ByVal hWndInsertAfter As Integer, ByVal x As Integer, ByVal y As Integer, ByVal cx As Integer, ByVal cy As Integer, ByVal wFlags As Integer)
  44.  
  45. Global Const WM_COMMAND = &H111
  46.  
  47. ' WindowState
  48. Global Const NORMAL = 0    ' 0 - Normal
  49. Global Const MINIMIZED = 1 ' 1 - Minimized
  50. Global Const MAXIMIZED = 2 ' 2 - Maximized
  51.  
  52.  
  53. ' Key State Masks for Mouse Messages
  54. Global Const MK_LBUTTON = &H1
  55. Global Const MK_RBUTTON = &H2
  56. Global Const MK_SHIFT = &H4
  57. Global Const MK_CONTROL = &H8
  58. Global Const MK_MBUTTON = &H10
  59.  
  60.  
  61. Global Const KEY_NUMLOCK = &H90
  62. Global Const KEY_CAPITAL = &H14
  63.  
  64. ' Arrange Method
  65. ' for MDI Forms
  66. Global Const CASCADE = 0
  67. Global Const TILE_HORIZONTAL = 1
  68. Global Const TILE_VERTICAL = 2
  69. Global Const ARRANGE_ICONS = 3
  70.  
  71.  
  72. Global Const COLOR_SCROLLBAR = 0
  73. Global Const COLOR_BACKGROUND = 1
  74. Global Const COLOR_ACTIVECAPTION = 2
  75. Global Const COLOR_INACTIVECAPTION = 3
  76. Global Const COLOR_MENU = 4
  77. Global Const COLOR_WINDOW = 5
  78. Global Const COLOR_WINDOWFRAME = 6
  79. Global Const COLOR_MENUTEXT = 7
  80. Global Const COLOR_WINDOWTEXT = 8
  81. Global Const COLOR_CAPTIONTEXT = 9
  82. Global Const COLOR_ACTIVEBORDER = 10
  83. Global Const COLOR_INACTIVEBORDER = 11
  84. Global Const COLOR_APPWORKSPACE = 12
  85. Global Const COLOR_HIGHLIGHT = 13
  86. Global Const COLOR_HIGHLIGHTTEXT = 14
  87. Global Const COLOR_BTNFACE = 15
  88. Global Const COLOR_BTNSHADOW = 16
  89. Global Const COLOR_GRAYTEXT = 17
  90. Global Const COLOR_BTNTEXT = 18
  91. Global Const COLOR_ENDCOLORS = COLOR_BTNTEXT
  92. Global Const COLOR_BTNHIGHLIGHT = 20
  93.  
  94. Declare Function SetWindowlong Lib "User" (ByVal hWnd As Integer, ByVal nIndex As Integer, ByVal dwNewLong As Long) As Long
  95. Declare Function GetWindowWord Lib "User" (ByVal hWnd As Integer, ByVal nIndex As Integer) As Integer
  96. Declare Function SetWindowWord Lib "User" (ByVal hWnd As Integer, ByVal nIndex As Integer, ByVal wNewWord As Integer) As Integer
  97. Declare Function SetfocusAPI Lib "User" Alias "SetFocus" (ByVal hWnd As Integer) As Integer
  98. Declare Function GetFocus Lib "User" () As Integer
  99. Declare Function GetActiveWindow Lib "User" () As Integer
  100. Declare Function GetKeyState Lib "User" (ByVal nVirtKey As Integer) As Integer
  101. Declare Function GetAsyncKeyState Lib "User" (ByVal vKey As Integer) As Integer
  102. 'Declare Function WindowFromPoint Lib "User" (ByVal ptScreen As Any) As Integer
  103. Declare Function WindowfromPoint Lib "User" (ByVal pty As Integer, ByVal ptx As Integer) As Integer
  104. Declare Function Lstrcpy Lib "kernel" (p1 As Any, p2 As Any) As Long
  105. Declare Function ShowWindow Lib "User" (ByVal hWnd As Integer, ByVal nCmdShow As Integer) As Integer
  106. Declare Function GetSysColor Lib "User" (ByVal nIndex As Integer) As Long
  107. Declare Sub SetSysColors Lib "User" (ByVal nChanges As Integer, lpSysColor As Integer, lpColorValues As Long)
  108. Declare Function CreateCompatibleDC Lib "GDI" (ByVal hDC As Integer) As Integer
  109. Declare Function CreateCompatibleBitmap Lib "GDI" (ByVal hDC As Integer, ByVal nWidth As Integer, ByVal nHeight As Integer) As Integer
  110. Declare Function CreateBitmap Lib "GDI" (ByVal nWidth As Integer, ByVal nHeight As Integer, ByVal nPlanes As Integer, ByVal nBitCount As Integer, ByVal lpBits As Any) As Integer
  111. Declare Function BitBlt Lib "GDI" (ByVal hDestDC As Integer, ByVal x As Integer, ByVal y As Integer, ByVal nWidth As Integer, ByVal nHeight As Integer, ByVal hSrcDC As Integer, ByVal XSrc As Integer, ByVal YSrc As Integer, ByVal dwRop As Long) As Integer
  112. Declare Function PatBlt Lib "GDI" (ByVal hDC As Integer, ByVal x As Integer, ByVal y As Integer, ByVal nWidth As Integer, ByVal nHeight As Integer, ByVal dwRop As Long) As Integer
  113. Declare Function SetBkColor Lib "GDI" (ByVal hDC As Integer, ByVal crColor As Long) As Long
  114. Declare Function SetTextColor Lib "GDI" (ByVal hDC As Integer, ByVal crColor As Long) As Long
  115. Declare Function DeleteDC Lib "GDI" (ByVal hDC As Integer) As Integer
  116. Declare Function GetWindowDC Lib "User" (ByVal hWnd As Integer) As Integer
  117. Declare Function FrameRect Lib "User" (ByVal hDC As Integer, lpRect As Rect, ByVal hBrush As Integer) As Integer
  118. Declare Sub ClientToScreen Lib "User" (ByVal hWnd As Integer, lpPoint As PointAPI)
  119. Declare Sub ScreenToClient Lib "User" (ByVal hWnd As Integer, lpPoint As PointAPI)
  120. Declare Function GetSystemMetrics Lib "User" (ByVal nIndex As Integer) As Integer
  121.  
  122.  
  123. '  Ternary raster operations
  124. Global Const SRCCOPY = &HCC0020 ' (DWORD) dest = source
  125. Global Const SRCPAINT = &HEE0086        ' (DWORD) dest = source OR dest
  126. Global Const SRCAND = &H8800C6  ' (DWORD) dest = source AND dest
  127. Global Const SRCINVERT = &H660046       ' (DWORD) dest = source XOR dest
  128. Global Const SRCERASE = &H440328        ' (DWORD) dest = source AND (NOT dest )
  129. Global Const NOTSRCCOPY = &H330008      ' (DWORD) dest = (NOT source)
  130. Global Const NOTSRCERASE = &H1100A6     ' (DWORD) dest = (NOT src) AND (NOT dest)
  131. Global Const MERGECOPY = &HC000CA       ' (DWORD) dest = (source AND pattern)
  132. Global Const MERGEPAINT = &HBB0226      ' (DWORD) dest = (NOT source) OR dest
  133. Global Const PATCOPY = &HF00021 ' (DWORD) dest = pattern
  134. Global Const PATPAINT = &HFB0A09        ' (DWORD) dest = DPSnoo
  135. Global Const PATINVERT = &H5A0049       ' (DWORD) dest = pattern XOR dest
  136. Global Const DSTINVERT = &H550009       ' (DWORD) dest = (NOT dest)
  137. Global Const BLACKNESS = &H42&  ' (DWORD) dest = BLACK
  138. Global Const WHITENESS = &HFF0062       ' (DWORD) dest = WHITE
  139.  
  140. ' ShowWindow() Commands
  141. Global Const SW_HIDE = 0
  142. Global Const SW_SHOWNORMAL = 1
  143. Global Const SW_NORMAL = 1
  144. Global Const SW_SHOWMINIMIZED = 2
  145. Global Const SW_SHOWMAXIMIZED = 3
  146. Global Const SW_MAXIMIZE = 3
  147. Global Const SW_SHOWNOACTIVATE = 4
  148. Global Const SW_SHOW = 5
  149. Global Const SW_MINIMIZE = 6
  150. Global Const SW_SHOWMINNOACTIVE = 7
  151. Global Const SW_SHOWNA = 8
  152. Global Const SW_RESTORE = 9
  153.  
  154. ' SetWindowPos Flags
  155. Global Const SWP_NOSIZE = &H1
  156. Global Const SWP_NOMOVE = &H2
  157. Global Const SWP_NOZORDER = &H4
  158. Global Const SWP_NOREDRAW = &H8
  159. Global Const SWP_NOACTIVATE = &H10
  160. Global Const SWP_DRAWFRAME = &H20
  161. Global Const SWP_SHOWWINDOW = &H40
  162. Global Const SWP_HIDEWINDOW = &H80
  163. Global Const SWP_NOCOPYBITS = &H100
  164. Global Const SWP_NOREPOSITION = &H200
  165.  
  166. ' SetWindowPos() hwndInsertAfter values
  167. Global Const HWND_TOP = 0
  168. Global Const HWND_BOTTOM = 1
  169. Global Const HWND_TOPMOST = -1
  170. Global Const HWND_NOTOPMOST = -2
  171.  
  172.  
  173. ' GetSystemMetrics() codes
  174. Global Const SM_CXSCREEN = 0
  175. Global Const SM_CYSCREEN = 1
  176. Global Const SM_CXVSCROLL = 2
  177. Global Const SM_CYHSCROLL = 3
  178. Global Const SM_CYCAPTION = 4
  179. Global Const SM_CXBORDER = 5
  180. Global Const SM_CYBORDER = 6
  181. Global Const SM_CXDLGFRAME = 7
  182. Global Const SM_CYDLGFRAME = 8
  183. Global Const SM_CYVTHUMB = 9
  184. Global Const SM_CXHTHUMB = 10
  185. Global Const SM_CXICON = 11
  186. Global Const SM_CYICON = 12
  187. Global Const SM_CXCURSOR = 13
  188. Global Const SM_CYCURSOR = 14
  189. Global Const SM_CYMENU = 15
  190. Global Const SM_CXFULLSCREEN = 16
  191. Global Const SM_CYFULLSCREEN = 17
  192. Global Const SM_CYKANJIWINDOW = 18
  193. Global Const SM_MOUSEPRESENT = 19
  194. Global Const SM_CYVSCROLL = 20
  195. Global Const SM_CXHSCROLL = 21
  196. Global Const SM_DEBUG = 22
  197. Global Const SM_SWAPBUTTON = 23
  198. Global Const SM_RESERVED1 = 24
  199. Global Const SM_RESERVED2 = 25
  200. Global Const SM_RESERVED3 = 26
  201. Global Const SM_RESERVED4 = 27
  202. Global Const SM_CXMIN = 28
  203. Global Const SM_CYMIN = 29
  204. Global Const SM_CXSIZE = 30
  205. Global Const SM_CYSIZE = 31
  206. Global Const SM_CXFRAME = 32
  207. Global Const SM_CYFRAME = 33
  208. Global Const SM_CXMINTRACK = 34
  209. Global Const SM_CYMINTRACK = 35
  210. Global Const SM_CMETRICS = 36
  211.  
  212.  
  213. ' MessageBox() Flags
  214. Global Const MB_OK = &H0
  215. Global Const MB_OKCANCEL = &H1
  216. Global Const MB_ABORTRETRYIGNORE = &H2
  217. Global Const MB_YESNOCANCEL = &H3
  218. Global Const MB_YESNO = &H4
  219. Global Const MB_RETRYCANCEL = &H5
  220.  
  221. Global Const MB_ICONHAND = &H10
  222. Global Const MB_ICONQUESTION = &H20
  223. Global Const MB_ICONEXCLAMATION = &H30
  224. Global Const MB_ICONASTERISK = &H40
  225.  
  226. Global Const MB_ICONINFORMATION = MB_ICONASTERISK
  227. Global Const MB_ICONSTOP = MB_ICONHAND
  228.  
  229. Global Const MB_DEFBUTTON1 = &H0
  230. Global Const MB_DEFBUTTON2 = &H100
  231. Global Const MB_DEFBUTTON3 = &H200
  232.  
  233. Global Const MB_APPLMODAL = &H0
  234. Global Const MB_SYSTEMMODAL = &H1000
  235. Global Const MB_TASKMODAL = &H2000
  236.  
  237. Global Const MB_NOFOCUS = &H8000
  238.  
  239. Global Const MB_TYPEMASK = &HF
  240. Global Const MB_ICONMASK = &HF0
  241. Global Const MB_DEFMASK = &HF00
  242. Global Const MB_MODEMASK = &H3000
  243. Global Const MB_MISCMASK = &HC000
  244.  
  245.  
  246.  
  247. ' MsgBox return values
  248. Global Const IDOK = 1                  ' OK button pressed
  249. Global Const IDCANCEL = 2              ' Cancel button pressed
  250. Global Const IDABORT = 3               ' Abort button pressed
  251. Global Const IDRETRY = 4               ' Retry button pressed
  252. Global Const IDIGNORE = 5              ' Ignore button pressed
  253. Global Const IDYES = 6                 ' Yes button pressed
  254. Global Const IDNO = 7                  ' No button pressed
  255.  
  256. Global Const WM_USER = &H400
  257.  
  258.  
  259. ' Edit Control Messages
  260. Global Const EM_GETSEL = WM_USER + 0
  261. Global Const EM_SETSEL = WM_USER + 1
  262. Global Const EM_GETRECT = WM_USER + 2
  263. Global Const EM_SETRECT = WM_USER + 3
  264. Global Const EM_SETRECTNP = WM_USER + 4
  265. Global Const EM_SCROLL = WM_USER + 5
  266. Global Const EM_LINESCROLL = WM_USER + 6
  267. Global Const EM_GETMODIFY = WM_USER + 8
  268. Global Const EM_SETMODIFY = WM_USER + 9
  269. Global Const EM_GETLINECOUNT = WM_USER + 10
  270. Global Const EM_LINEINDEX = WM_USER + 11
  271. Global Const EM_SETHANDLE = WM_USER + 12
  272. Global Const EM_GETHANDLE = WM_USER + 13
  273. Global Const EM_GETTHUMB = WM_USER + 14
  274. Global Const EM_LINELENGTH = WM_USER + 17
  275. Global Const EM_REPLACESEL = WM_USER + 18
  276. Global Const EM_SETFONT = WM_USER + 19
  277. Global Const EM_GETLINE = WM_USER + 20
  278. Global Const EM_LIMITTEXT = WM_USER + 21
  279. Global Const EM_CANUNDO = WM_USER + 22
  280. Global Const EM_UNDO = WM_USER + 23
  281. Global Const EM_FMTLINES = WM_USER + 24
  282. Global Const EM_LINEFROMCHAR = WM_USER + 25
  283. Global Const EM_SETWORDBREAK = WM_USER + 26
  284. Global Const EM_SETTABSTOPS = WM_USER + 27
  285. Global Const EM_SETPASSWORDCHAR = WM_USER + 28
  286. Global Const EM_EMPTYUNDOBUFFER = WM_USER + 29
  287. Global Const EM_MSGMAX = WM_USER + 30
  288.  
  289. Declare Function IsClipboardFormatAvailable Lib "User" (ByVal wFormat As Integer) As Integer
  290.  
  291. ' Predefined Clipboard Formats
  292. Global Const CF_TEXT = 1
  293. Global Const CF_BITMAP = 2
  294. Global Const CF_METAFILEPICT = 3
  295. Global Const CF_SYLK = 4
  296. Global Const CF_DIF = 5
  297. Global Const CF_TIFF = 6
  298. Global Const CF_OEMTEXT = 7
  299. Global Const CF_DIB = 8
  300. Global Const CF_PALETTE = 9
  301.  
  302. Global Const CF_OWNERDISPLAY = &H80
  303. Global Const CF_DSPTEXT = &H81
  304. Global Const CF_DSPBITMAP = &H82
  305. Global Const CF_DSPMETAFILEPICT = &H83
  306.  
  307.  
  308. Global Const WM_CUT = &H300
  309. Global Const WM_COPY = &H301
  310. Global Const WM_PASTE = &H302
  311. Global Const WM_CLEAR = &H303
  312. Global Const WM_UNDO = &H304
  313. Global Const WM_RENDERFORMAT = &H305
  314. Global Const WM_RENDERALLFORMATS = &H306
  315. Global Const WM_DESTROYCLIPBOARD = &H307
  316. Global Const WM_DRAWCLIPBOARD = &H308
  317. Global Const WM_PAINTCLIPBOARD = &H309
  318. Global Const WM_VSCROLLCLIPBOARD = &H30A
  319. Global Const WM_SIZECLIPBOARD = &H30B
  320. Global Const WM_ASKCBFORMATNAME = &H30C
  321. Global Const WM_CHANGECBCHAIN = &H30D
  322. Global Const WM_HSCROLLCLIPBOARD = &H30E
  323. Global Const WM_QUERYNEWPALETTE = &H30F
  324. Global Const WM_PALETTEISCHANGING = &H310
  325. Global Const WM_PALETTECHANGED = &H311
  326.  
  327. Global Const WM_SETTEXT = &HC
  328. Global Const WM_GETTEXT = &HD
  329.  
  330. Global Const GWW_HWNDPARENT = (-8)
  331. Global Const EM_SETREADONLY = (WM_USER + 31)
  332.  
  333. ' Window Styles
  334. Global Const WS_OVERLAPPED = &H0&
  335. Global Const WS_POPUP = &H80000000
  336. Global Const WS_CHILD = &H40000000
  337. Global Const WS_MINIMIZE = &H20000000
  338. Global Const WS_VISIBLE = &H10000000
  339. Global Const WS_DISABLED = &H8000000
  340. Global Const WS_CLIPSIBLINGS = &H4000000
  341. Global Const WS_CLIPCHILDREN = &H2000000
  342. Global Const WS_MAXIMIZE = &H1000000
  343. Global Const WS_CAPTION = &HC00000      '  WS_BORDER Or WS_DLGFRAME
  344. Global Const WS_BORDER = &H800000
  345. Global Const WS_DLGFRAME = &H400000
  346. Global Const WS_VSCROLL = &H200000
  347. Global Const WS_HSCROLL = &H100000
  348. Global Const WS_SYSMENU = &H80000
  349. Global Const WS_THICKFRAME = &H40000
  350. Global Const WS_GROUP = &H20000
  351. Global Const WS_TABSTOP = &H10000
  352.  
  353. Global Const WS_MINIMIZEBOX = &H20000
  354. Global Const WS_MAXIMIZEBOX = &H10000
  355.  
  356. Global Const WS_TILED = WS_OVERLAPPED
  357. Global Const WS_ICONIC = WS_MINIMIZE
  358. Global Const WS_SIZEBOX = WS_THICKFRAME
  359.  
  360. ' Edit Control Styles
  361. Global Const ES_LEFT = &H0&
  362. Global Const ES_CENTER = &H1&
  363. Global Const ES_RIGHT = &H2&
  364. Global Const ES_MULTILINE = &H4&
  365. Global Const ES_UPPERCASE = &H8&
  366. Global Const ES_LOWERCASE = &H10&
  367. Global Const ES_PASSWORD = &H20&
  368. Global Const ES_AUTOVSCROLL = &H40&
  369. Global Const ES_AUTOHSCROLL = &H80&
  370. Global Const ES_NOHIDESEL = &H100&
  371. Global Const ES_OEMCONVERT = &H400&
  372.  
  373.  
  374. Declare Sub hmemcpy Lib "Kernel" (lpDest As Any, lpSource As Any, ByVal dwBytes As Long)
  375. Declare Function GlobalAlloc Lib "Kernel" (ByVal wFlags As Integer, ByVal dwBytes As Long) As Integer
  376. Declare Function GlobalFree Lib "Kernel" (ByVal hMem As Integer) As Integer
  377. Declare Function GlobalLock Lib "Kernel" (ByVal hMem As Integer) As Long
  378. Declare Function GlobalUnlock Lib "Kernel" (ByVal hMem As Integer) As Integer
  379.  
  380. Global Const GMEM_MOVEABLE = &H2
  381. Global Const GMEM_ZEROINIT = &H40
  382. Global Const GHND = (GMEM_MOVEABLE Or GMEM_ZEROINIT)
  383.  
  384. ' Commands to pass WinHelp()
  385. Global Const HELP_CONTEXT = &H1 '  Display topic in ulTopic
  386. Global Const HELP_QUIT = &H2    '  Terminate help
  387. Global Const HELP_INDEX = &H3   '  Display index
  388. Global Const HELP_HELPONHELP = &H4      '  Display help on using help
  389. Global Const HELP_SETINDEX = &H5        '  Set the current Index for multi index help
  390. Global Const HELP_KEY = &H101           '  Display topic for keyword in offabData
  391. Global Const HELP_MULTIKEY = &H201
  392. Global Const HELP_PARTIALKEY = &H105 ' Display topic found in keyword list
  393. Global Const HELP_CONTENTS = &H3     ' Display Help for a particular topic
  394.  
  395. Sub gethilobyte (wParam As Integer, LOBYTE As Integer, HIBYTE As Integer)
  396.       ' This is the LOBYTE of the wParam:
  397.       LOBYTE = wParam And &HFF&
  398.       ' This is the HIBYTE of the wParam:
  399.       HIBYTE = wParam \ &H100 And &HFF&
  400. End Sub
  401.  
  402. Sub gethiloword (lParam As Long, LOWORD As Long, HIWORD As Long)
  403.       ' This is the LOWORD of the lParam:
  404.       LOWORD = lParam And &HFFFF&
  405.       ' LOWORD now equals 65,535 or &HFFFF
  406.       ' This is the HIWORD of the lParam:
  407.       HIWORD = lParam \ &H10000 And &HFFFF&
  408.       ' HIWORD now equals 30,583 or &H7777
  409. End Sub
  410.  
  411. Function MemAddr (S1 As String) As Long
  412.      MemAddr = Lstrcpy(ByVal S1, ByVal S1)
  413. End Function
  414.  
  415.